草庐IT

haskell - 平行 cabal

全部标签

python - 如何在 Haskell 中重新实现这个 Python XML 解析函数?

我最近编写了以下Python函数,它将获取GooglePicasacontacts.xml文件并输出带有ID和名称的字典。defread_contacts_file(fn):importxml.etree.ElementTreex=xml.etree.ElementTree.ElementTree(file=fn)q=[(u.attrib["id"],u.attrib["name"])foruinx.iter("contact")]returndict(q)这个函数的作用是返回一个字典(哈希表,映射),其中ID是键,名称是值。文件本身具有以下形式:在Haskell中实现它的最简单方法是

xml - Haskell解析低内存的大xml文件

因此,我使用了几个HaskellXML库,包括hexpat和xml-enumerator。在阅读了RealWorldHaskell(http://book.realworldhaskell.org/read/io.html)中的IO章节后,我的印象是,如果我运行以下代码,它将在我执行它时被垃圾收集。但是,当我在一个大文件上运行它时,内存使用率在运行时不断攀升。runghcparse.hsbigfile.xml我做错了什么?我的假设错了吗?映射/过滤器是否强制它评估所有内容?importqualifiedData.ByteString.LazyasBSLimportqualifiedDa

xml - 如何在 Haskell 中验证 XML(通过 XSD 文件)?

我已经在使用HXT来转换XML。现在我想根据XSD文件验证输入和输出。HXT似乎只包括RELAXNG和DTDvalidators.我真的不关心使用其他东西来验证。 最佳答案 我能想到的最接近的是HaXml和一些苦力:https://hackage.haskell.org/package/HaXml-1.25.3特别是,您拥有解析XSD和验证DTD的工具。但是,我没有“开箱即用”的方法来验证XSD——可以将您想要的信息粉碎成它们的DTD格式,或者您可以针对已解析的XSD复制它们的验证逻辑。至少这是一个开始...

xml - Haskell 对 XML 中的 Unicode 的态度是什么?

我想知道在Haskell中处理UnicodeXML的官方解决方案是什么。我注意到HXT对文本使用简单的String表示(Unicode字符列表!!!)。http://hackage.haskell.org/packages/archive/hxt/9.3.1.0/doc/html/Text-XML-HXT-DOM-TypeDefs.html#t:XNodeConstructorsXTextStringordinarytext(leaf)XBlobBlobtextrepresentedmorespaceefficientasbytestring(leaf)解析时如何在这两种表示之间进行选

xml - 优化 Haskell XML 解析器

我目前正在尝试使用Haskell,并且非常享受这种体验,但我正在针对具有一些相当严格的性能要求的真实项目对其进行评估。我的任务的第一步是处理维基百科的完整(无历史)转储(bzipped)——总共压缩了大约6Gb。在python中,对每个原始页面(总共约1000万)进行完整提取的脚本在我的盒子上需要大约30分钟(作为引用,使用pull解析器的scala实现需要大约40分钟)。我一直在尝试使用Haskell和ghc复制这种性能,并且一直在努力匹配它。我一直在使用Codec.Compression.BZip进行解压缩,并使用hexpat进行解析。我使用惰性字节串作为元素文本类型的hexpat

xml - 在 Haskell 中,如何从 XML 文档中提取字符串?

如果我有这样一个XML文档:HelloName和一些像这样的Haskell类型/数据定义:typeName=StringtypeValue=StringdataLocalizedString=LSNameValue我想写一个具有以下签名的Haskell函数:getLocalizedStrings::String->[LocalizedString]其中第一个参数是XML文本,返回值是:[LS"Greeting""Hello",LS"Name""Name"]我该怎么做?如果HaXml是最好的工具,我将如何使用HaXml来实现上述目标?谢谢! 最佳答案

xml - 如何使用 Haskell(使用 HaXml)访问一些 XML 数据?

我想访问像这样的XML文件的数据我想要例如读出每个Foo及其参数,我怎么能用Haskell做到这一点?(我想使用HaXml模块)我不知道从哪里开始。 最佳答案 对于简单的任务,您可能需要考虑使用tagsoup包。 关于xml-如何使用Haskell(使用HaXml)访问一些XML数据?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/6082350/

xml - Haskell 的哪个 XML 解析器?

我正在尝试编写一些应用程序,对存储在相当大的XML文件(从10到800MB)中的数据进行分析。每组数据都存储为单个标签,具体数据指定为属性。我目前是来自HaXml的saxParse,我对使用它期间的内存使用情况不满意。在解析15Mb的XML文件时,它消耗了超过1Gb的内存,尽管我试图不将数据存储在列表中,并立即处理它。我使用以下代码:importOneFilefileprocioproc=doxmlputStrLn$"Error:"++str;Nothing->forM_sxs(ioproc.proc.(extractAttrs"row"))其中'proc'-执行数据从属性到记录的转换

xml - 在 Haskell 中解析 XML

我正在尝试从定期提供带有股票市场报价(sampledata)的XML文件的网页中获取数据。XML的结构非常简单,大概是这样的:(不止于此,但这足以作为示例)。我想把它解析成一个数据结构:dataQuote=Quote{symbol::String,date::Data.Time.Calendar.Day,time::Data.Time.LocalTime.TimeOfDay,price::Float}我或多或少地了解Parsec是如何工作的(在RealWorldHaskell书的水平上),并且我尝试了一点Text.XML库,但我所能开发的只是一个有效的代码但是对于这样一个简单的任务来说

xml - Haskell RSS、邮件和 XML 库选择

我学习Haskell已经有一段时间了,对于我学习的每一种新编程语言,我都会做一个需要使用邮件服务器并发布RSS和Atom内容的小项目。唯一的问题是,我似乎找不到适合这些的软件包,或者至少找不到任何关于软件包的评论。所以我会问社区:与邮件服务器交互的任何首选软件包?(IMAP、POP3等)是否有用于发布RSS和/或Atom提要的首选软件包?如果做不到这一点,是否有任何首选的通用XML包?对于将所有这些绑定(bind)在一起的简约、低摩擦网络服务器有什么建议吗?提前致谢。 最佳答案 为了回答这个问题,feed软件包非常适合制作rss。对